Android+python+appium多机自动化 |
您所在的位置:网站首页 › 安卓 python 自动化 › Android+python+appium多机自动化 |
一、多台设备连接电脑
adb devices查看设备序列号和连接状态 二、启动多个appium服务 开不同的端口,启动多个appium服务; 如果是桌面版appium:在应用程序中找到appium,右键-》显示包内容, 点开macOS文件夹,能够看到appium可执行文件; 多次点击可以打开多个appium服务; 针对每个设备新开一个端口; 打开appium服务器,选择advanced;
设置’Sever Port’,‘Bootstrap Port’,按照递增1的规律,点击’Save As Presets’命名并保存;
点击’Presets’,选中想要启动的预设值端口,点击’Start Server V1.21.0’,后面可以根据需要几个安卓手机,启动几个appium服务; 效果: 如果电脑上装的是桌面版的appium,好像不能通过命令启动。 如果是命令行appium服务:Appium服务器端口:4723,Bootstrap Port为4724 Appium服务器端口:4725,Bootstrap Port为4726 appium -a 127.0.0.1 -p 4723 -bp 4728 --chromedriver-port 9519 -U 255d50d7 --session-override 三、维护设备参数信息把参数统一维护在一个配置文件里;device_config.json [{ "url": "http://127.0.0.1:4723/wd/hub", "desired_caps" : { "platformName": "Android", "platformVersion": "11", "deviceName": "oneplus9", "udid":"255d50d7", "appActivity": "com.xxx.MainActivity", "appPackage": "包名", "automationName": "UiAutomator2", "autoGrantPermissions": "true", "noReset": true, "newCommandTimeout":300 } }, { "url": "http://127.0.0.1:4725/wd/hub", "desired_caps" : { "platformName": "Android", "platformVersion": "12", "deviceName": "xiaomi12", "udid":"e073ee1", "appActivity": "com.xxx.MainActivity", "appPackage": "包名", "automationName": "UiAutomator2", "autoGrantPermissions": "true", "noReset": true, "newCommandTimeout":300 } } ] 四、多进程或者多线程进行设备与appium的连接,获取driver def connect_appium(url,desired_caps): #启动appium服务 #进行设备连接 driver = webdriver.Remote(command_executor=url,desired_capabilities=desired_caps) return driver if __name__ == '__main__': with open("device_config.json", "r") as f: data = list(json.load(f)) for i in match_list: a = threading.Thread(target=connect_appium,args=(data[i]["url"],data[i]["desired_caps"])) a.start() |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |